mir: reset cursor_inside on hide/withdraw
authorWilliam Hua <william@attente.ca>
Thu, 4 Dec 2014 15:03:40 +0000 (10:03 -0500)
committerWilliam Hua <william@attente.ca>
Thu, 5 Feb 2015 16:26:18 +0000 (17:26 +0100)
Without this, we generate incorrect crossing events for transient
windows.

gdk/mir/gdkmirwindowimpl.c

index dac989cb562e2a89f0750affe1a44e166c00e06f..eb90f7e3cc5b6bf504fd60533c63e73820d3bdca 100644 (file)
@@ -446,6 +446,7 @@ gdk_mir_window_impl_hide (GdkWindow *window)
   //g_printerr ("gdk_mir_window_impl_hide window=%p\n", window);
   GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
 
+  impl->cursor_inside = FALSE;
   impl->visible = FALSE;
   ensure_no_surface (window);
 
@@ -459,6 +460,7 @@ gdk_mir_window_impl_withdraw (GdkWindow *window)
   //g_printerr ("gdk_mir_window_impl_withdraw window=%p\n", window);
   GdkMirWindowImpl *impl = GDK_MIR_WINDOW_IMPL (window->impl);
 
+  impl->cursor_inside = FALSE;
   impl->visible = FALSE;
   ensure_no_surface (window);